<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>博客编辑页</title>

    <!-- 引入自己写的样式 -->
    <link rel="stylesheet" href="css/conmmon.css">
    <link rel="stylesheet" href="css/blog_edit.css">

    <!-- 引入 editor.md 的依赖 -->
    <link rel="stylesheet" href="editor.md/css/editormd.min.css" />
    <script src="js/jquery.min.js"></script>
    <script src="editor.md/editormd.js"></script>
</head>

<body>
    <!-- 导航栏 -->
    <div class="nav">
        <img src="img/logo.jpg" alt="">
        <span class="title">博客系统(SSM版本)</span>
        <!-- 用来占据中间位置 -->
        <span class="spacer"></span>
        <a href="blog_list.html">主页</a>
        <!-- <a href="blog_edit.html">写博客</a> -->
        <!-- <a href="/user/logout">退出登陆</a> -->
        <a href="javascript:logout()" class="logout">退出登录</a>
        <!-- <a href="#">注销</a> -->
    </div>
    <!-- 编辑框容器 -->
    <div class="blog-edit-container">
        <!-- 内容分为两个部分，标题区和编辑区 -->
          <!-- 标题编辑区 -->
          <div class="title">
            <!-- 这里我们用from表单提交数据，后端要想获得前端提交的数据，from表单中要加上name,后端就是通过这个key来获取到value的 -->
                <input type="text" id="title" placeholder="在这里写下文章标题">
                <button id="submit" onclick="mysub()">发布文章</button>
            </div>

            <!-- 创建编辑器标签 -->
            <div id="editorDiv">
                <!-- 需要在这里加上一个隐藏的 textarea -->
                <!-- 属于editor.md 这个库的要求 -->
                <textarea id="editor-markdown" style="display:none;"></textarea>
            </div>
    </div>

    <script>
        // 初始化编辑器
        var editor;
        function initEdit(md){
            // 编辑器设置
            editor = editormd("editorDiv", {
                // 这里的尺寸必须在这里设置. 设置样式会被 editormd 自动覆盖掉. 
                width: "100%",
                // 高度 100% 意思是和父元素一样高. 要在父元素的基础上去掉标题编辑区的高度
                height: "calc(100% - 50px)",
                // 编辑器中的初始内容
                markdown: md,
                // 指定 editor.md 依赖的插件路径
                path: "editor.md/lib/",
                saveHTMLToTextarea: true // 加上这个属性，效果就是把编辑器里的内容给自动保存到textarea里
            });
        }
        initEdit("# 在这里写下一篇博客"); // 初始化编译器的值
        // 提交
        function mysub(){
            var title = jQuery('#title').val();
            var content = jQuery('#editor-markdown').val();
            // var content = editor.getValue(); 这一行和上一行的效果是一样的
            // 非空校验
            if (title == "") {
                alert("请输入标题");
                title.focus();
                return false;
            }
            jQuery.ajax({
                url:"/article/add",
                type:"post",
                data:{
                    title:title,
                    content:content,
                },
                success: function(result) {
                    if (result.state == 200) {
                        alert("恭喜，博客发表成功！");
                        location.href = '/blog_list.html';
                    }
                    else {
                        alert(result.msg);
                    }
                },
                error: function(err) {
                    if (err.status == 401) {
                        alert("当前用户未登录，你即将跳转到登录页面");
                        location.href = "login.html";
                    }
                }
            });

        }
        function logout() {
            if (confirm("确认退出？")) {
                jQuery.ajax({
                    url:"/user/logout",
                    type:"get",
                    success: function(result) {
                        alert("恭喜,退出成功,点击进行下一步操作")
                        location.href = "login.html";
                    },
                    error: function() {
                        // 说明当前退出的状态不正确，可能未登录，强行跳转到登录页面.
                        alert("抱歉，当前状态异常，请点击确认！")
                        location.assign('/login.html');
                    }
                });
            }
        }
        
    </script>
</body>

</html>